var express = require('express');
var router = express.Router();
const fs = require('fs');
const path = require('path');

// 1. 数据库的那些模块
const db = require('../db/db');
const books = require('../model/books');
const mongoose = require('mongoose');

/* 首页 */
router.get('/', function (req, res, next) {
  // 1. 测试 - 添加数据
  db(() => {
    // 1.1 使用添加数据的方式创建内容
    fs.readFile(path.join(__dirname, '../static/db.json'), 'utf8', (err, data) => {
      if (err) throw err;

      // 1.2 读取了数据之后，需要创建
      // console.log(typeof data);  // 是字符串类型的
      books.create(JSON.parse(data), (err, data) => {
        if (err) throw err

        res.send('数据写入成功！')
      })
    })
  }, () => {
    console.log('数据库连接失败，请检查网络.');
  })
});

router.get('/', (req, res) => {
  res.send('请访问 /data')
})

// 2. 客户端请求所有的数据
router.get('/data', (req, res) => {
  const { num } = req.query;
  count = 0;

  // 2.1 使用模型对象访问数据
  db(() => {
    // 2.2 find方法获取所有的数据
    if (num) count = num;
    books.find().skip(count).limit(5).exec((err, data) => {
      if (err) throw err;

      // 返回给客户端
      // res.send({
      //   code: 200,
      //   msg: '请求成功!',
      //   data
      // })

      res.render('index', { data, msg: '请求成功！' })
    })
  })
})

module.exports = router;
